package com.ruoyi.develop.goodsSaleMaterial.domain;

import java.math.BigDecimal;
import java.util.List;

import com.ruoyi.develop.goodsOrderIn.domain.GoodsOrderIn;
import com.ruoyi.develop.goodsSaleMaterialChild.domain.GoodsSaleMaterialChild;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 销售产品物料对象 goods_sale_material
 *
 * @author qh
 * @date 2024-11-09
 */
public class GoodsSaleMaterial extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    private String id;

    /**
     * 拆解来源
     */
    private String source;

    /**
     * 销售产品id
     */
    @Excel(name = "销售产品id")
    private String gsaleId;


    /**
     * 铁件记录id
     */
    @Excel(name = "铁件记录id")
    private String ironRecordId;

    /**
     * 铁件明细id
     */
    @Excel(name = "铁件明细id")
    private String ironDetailId;

    /**
     * 产品id
     */
    @Excel(name = "产品id")
    private String goodsId;

    /**
     * 物料名称
     */
    @Excel(name = "物料名称")
    private String goodsName;

    /**
     * 物料类型 0-金具 1-产品
     */
    @Excel(name = "物料类型 0-金具 1-产品")
    private String goodsType;

    /**
     * 物料型号明细
     */
    @Excel(name = "物料型号明细")
    private String goodsBrand;

    /**
     * 物料型号
     */
    @Excel(name = "物料型号")
    private String goodModel;

    /**
     * 物料单价
     */
    @Excel(name = "物料单价")
    private BigDecimal goodsBuyPrice;

    /**
     * 物料本价
     */
    @Excel(name = "物料本价")
    private BigDecimal goodsBuyTotal;

    /**
     * 供应商
     */
    @Excel(name = "供应商")
    private String supplierId;

    /**
     * 供应商名称
     */
    @Excel(name = "供应商名称")
    private String supplierName;

    /**
     * 销售人姓名
     */
    @Excel(name = "销售人姓名")
    private String saleName;

    /**
     * 删除标志（0代表存在 2代表删除）
     */
    private String delFlag;

    /**
     * 订单编号
     */
    @Excel(name = "订单编号")
    private String projectId;

    /**
     * 订单名称
     */
    @Excel(name = "订单名称")
    private String projectName;

    /**
     * 订单编号
     */
    @Excel(name = "订单编号")
    private String projectNo;

    /**
     * 状态
     */
    @Excel(name = "状态")
    private String status;

    private String goodsUnit;

    private String goodsCode;

    private BigDecimal goodsCount;
    private String produceNo;
    private String scaleCode;
    private String scaleName;
    private String xinghao;
    private String mainGoodid;

    public String getMainGoodid() {
        return mainGoodid;
    }

    public void setMainGoodid(String mainGoodid) {
        this.mainGoodid = mainGoodid;
    }

    public String getProduceNo() {
        return produceNo;
    }

    public void setProduceNo(String produceNo) {
        this.produceNo = produceNo;
    }

    private BigDecimal lingquCount;
    private BigDecimal shengyuCount;
    private BigDecimal gsaleCount;

    private String[] mainIds;

    private String factoryGoodssaleId;
    private String factoryProdNo;
    private String produceId;
    private String saleAllId;
    private String saleId;
    /**
     * 入库明细
     */
    List<GoodsSaleMaterialChild> goodsSaleMaterialChild;
    private BigDecimal shijicount;

    public BigDecimal getShijicount() {
        return shijicount;
    }

    public void setShijicount(BigDecimal shijicount) {
        this.shijicount = shijicount;
    }

    public List<GoodsSaleMaterialChild> getGoodsSaleMaterialChild() {
        return goodsSaleMaterialChild;
    }

    public void setGoodsSaleMaterialChild(List<GoodsSaleMaterialChild> goodsSaleMaterialChild) {
        this.goodsSaleMaterialChild = goodsSaleMaterialChild;
    }

    public String getSaleId() {
        return saleId;
    }

    public void setSaleId(String saleId) {
        this.saleId = saleId;
    }

    public String getSaleAllId() {
        return saleAllId;
    }

    public void setSaleAllId(String saleAllId) {
        this.saleAllId = saleAllId;
    }

    public String getProduceId() {
        return produceId;
    }

    public void setProduceId(String produceId) {
        this.produceId = produceId;
    }

    public String getXinghao() {
        return xinghao;
    }

    public void setXinghao(String xinghao) {
        this.xinghao = xinghao;
    }

    public String getFactoryGoodssaleId() {
        return factoryGoodssaleId;
    }

    public void setFactoryGoodssaleId(String factoryGoodssaleId) {
        this.factoryGoodssaleId = factoryGoodssaleId;
    }

    public String getFactoryProdNo() {
        return factoryProdNo;
    }

    public void setFactoryProdNo(String factoryProdNo) {
        this.factoryProdNo = factoryProdNo;
    }

    public String[] getMainIds() {
        return mainIds;
    }

    public void setMainIds(String[] mainIds) {
        this.mainIds = mainIds;
    }

    public BigDecimal getGsaleCount() {
        return gsaleCount;
    }

    public void setGsaleCount(BigDecimal gsaleCount) {
        this.gsaleCount = gsaleCount;
    }

    public BigDecimal getLingquCount() {
        return lingquCount;
    }

    public void setLingquCount(BigDecimal lingquCount) {
        this.lingquCount = lingquCount;
    }

    public BigDecimal getShengyuCount() {
        return shengyuCount;
    }

    public void setShengyuCount(BigDecimal shengyuCount) {
        this.shengyuCount = shengyuCount;
    }

    public String getScaleCode() {
        return scaleCode;
    }

    public void setScaleCode(String scaleCode) {
        this.scaleCode = scaleCode;
    }

    public String getScaleName() {
        return scaleName;
    }

    public void setScaleName(String scaleName) {
        this.scaleName = scaleName;
    }

    public BigDecimal getGoodsCount() {
        return goodsCount;
    }

    public void setGoodsCount(BigDecimal goodsCount) {
        this.goodsCount = goodsCount;
    }

    public String getGoodsCode() {
        return goodsCode;
    }

    public void setGoodsCode(String goodsCode) {
        this.goodsCode = goodsCode;
    }

    List<GoodsOrderIn> columns;
    List<GoodsSaleMaterial> materialColumns;

    public List<GoodsSaleMaterial> getMaterialColumns() {
        return materialColumns;
    }

    public void setMaterialColumns(List<GoodsSaleMaterial> materialColumns) {
        this.materialColumns = materialColumns;
    }

    public List<GoodsOrderIn> getColumns() {
        return columns;
    }

    public void setColumns(List<GoodsOrderIn> columns) {
        this.columns = columns;
    }

    public String getGoodsUnit() {
        return goodsUnit;
    }

    public void setGoodsUnit(String goodsUnit) {
        this.goodsUnit = goodsUnit;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setGsaleId(String gsaleId) {
        this.gsaleId = gsaleId;
    }

    public String getGsaleId() {
        return gsaleId;
    }

    public void setGoodsId(String goodsId) {
        this.goodsId = goodsId;
    }

    public String getGoodsId() {
        return goodsId;
    }

    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }

    public String getGoodsName() {
        return goodsName;
    }

    public void setGoodsType(String goodsType) {
        this.goodsType = goodsType;
    }

    public String getGoodsType() {
        return goodsType;
    }

    public void setGoodsBrand(String goodsBrand) {
        this.goodsBrand = goodsBrand;
    }

    public String getGoodsBrand() {
        return goodsBrand;
    }

    public void setGoodModel(String goodModel) {
        this.goodModel = goodModel;
    }

    public String getGoodModel() {
        return goodModel;
    }

    public void setGoodsBuyPrice(BigDecimal goodsBuyPrice) {
        this.goodsBuyPrice = goodsBuyPrice;
    }

    public BigDecimal getGoodsBuyPrice() {
        return goodsBuyPrice;
    }

    public void setGoodsBuyTotal(BigDecimal goodsBuyTotal) {
        this.goodsBuyTotal = goodsBuyTotal;
    }

    public BigDecimal getGoodsBuyTotal() {
        return goodsBuyTotal;
    }

    public void setSupplierId(String supplierId) {
        this.supplierId = supplierId;
    }

    public String getSupplierId() {
        return supplierId;
    }

    public void setSupplierName(String supplierName) {
        this.supplierName = supplierName;
    }

    public String getSupplierName() {
        return supplierName;
    }

    public void setSaleName(String saleName) {
        this.saleName = saleName;
    }

    public String getSaleName() {
        return saleName;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getDelFlag() {
        return delFlag;
    }

    public void setProjectId(String projectId) {
        this.projectId = projectId;
    }

    public String getProjectId() {
        return projectId;
    }

    public void setProjectName(String projectName) {
        this.projectName = projectName;
    }

    public String getProjectName() {
        return projectName;
    }

    public void setProjectNo(String projectNo) {
        this.projectNo = projectNo;
    }

    public String getProjectNo() {
        return projectNo;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public String getIronRecordId() {
        return ironRecordId;
    }

    public void setIronRecordId(String ironRecordId) {
        this.ironRecordId = ironRecordId;
    }

    public String getIronDetailId() {
        return ironDetailId;
    }

    public void setIronDetailId(String ironDetailId) {
        this.ironDetailId = ironDetailId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("gsaleId", getGsaleId())
                .append("goodsId", getGoodsId())
                .append("goodsName", getGoodsName())
                .append("goodsType", getGoodsType())
                .append("goodsBrand", getGoodsBrand())
                .append("goodModel", getGoodModel())
                .append("goodsBuyPrice", getGoodsBuyPrice())
                .append("goodsBuyTotal", getGoodsBuyTotal())
                .append("supplierId", getSupplierId())
                .append("supplierName", getSupplierName())
                .append("saleName", getSaleName())
                .append("delFlag", getDelFlag())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .append("projectId", getProjectId())
                .append("projectName", getProjectName())
                .append("projectNo", getProjectNo())
                .append("status", getStatus())
                .toString();
    }
}
